#include<stdio.h>
#include<fcntl.h>
#include<sys/stat.h>
#include<string.h>
#include<unistd.h>

int main()
{
  umask(0);
  int fd=open("./bite.txt",O_CREAT|O_RDWR|O_TRUNC,0777);
  //如果返回值<0 打开文件失败
  if(fd<0)
  {
    perror("open error");
    return -1;
  }
  char*data="I like Linux!";
  //向文件中写入字节为strlen(data)大小的数据
  ssize_t ret=write(fd,data,strlen(data));
  //如果返回值小于0，写入失败
  if(ret<0)
  {
    perror("write error");
    close(fd);
    return -1;
  }
  //是文件指针偏移到文件起始位置
  lseek(fd,0,SEEK_SET);
  char buf[1024]={0};
  //从文件中读取数据
  ret=read(fd,buf,strlen(data));
  if(ret<0)
  {
    perror("read error");
    close(fd);
    return -1;
  }
  printf("%s\n",buf);
  close(fd);
  return 0;
}
